RoArm-M2-S Python HTTP请求通信

Python HTTP请求通信

本章节主要介绍了如何运行Python程序通过HTTP请求与机械臂进行通信。

HTTP(Hypertext Transfer Protocol)是一种用于在Web上进行数据通信的协议,它是属于应用层的面向对象的协议。主要是基于WIFI模块实现的无线通信,请求-响应模型灵活且简单。

在运行Python例程前,您需要先在您的系统上安装好Python,且部署好Python的虚拟环境及安装好所有例程需要用到的安装包,具体教程可以见RoArm-M2-S_Python串口通信控制中的步骤。


在 RoArm-M2-S Python 例程中可以看见其中有四个 Python 程序,HTTP请求通信用到的 Python 例程为 http_simple_ctrl.py。例程如下:

import requests
import argparse


def main():
    parser = argparse.ArgumentParser(description='Http JSON Communication')
    parser.add_argument('ip', type=str, help='IP address: 192.168.10.104')

    args = parser.parse_args()

    ip_addr = args.ip

    try:
        while True:
            command = input("input your json cmd: ")
            url = "http://" + ip_addr + "/js?json=" + command
            response = requests.get(url)
            content = response.text
            print(content)
    except KeyboardInterrupt:
        pass


if __name__ == "__main__":
    main()

在运行程序前您需要确认机械臂的ip地址。确认机械臂ip地址跟机械臂所处的WIFI模式息息相关,具体可以参考教程RoArm-M2-S_WIFI配置

  • 如果机械臂 WIFI 模式仅处于 AP 模式,则 IP 地址为192.168.4.1;
  • 如果机械臂 WIFI 模式处于 STA 模式,则可以在机械臂的OLED屏幕上获得该机械臂的 IP 地址。

使用以下命令来运行HTTP请求通信程序。命令中的 IP 地址要更改为您机械臂的 IP 地址。

python http_simple_ctrl.py 192.168.4.1

注意:无论是哪一种模式下,机械臂需要与该脚本运行的设备处于同一个局域网内。


运行完成后,可以看见返回的信息,接着可以输入JSON格式的指令,也可以获取机械臂的反馈信息,从而与机械臂进行通信。

更多 JSON 格式指令的含义参考教程 RoArm-M2-S_JSON指令含义


例程


TAG: ESP32 C3 Jetson Orin Nano Super 人工智能(AI)开发套件内置8GB显存核心板 树莓派5 RTC配置 8寸USB电脑机箱副屏RGB/桌搭氛围屏LCD 1280x800带拾音功能 树莓派CM5计算模块IO扩展底板B Compute Module 5加密芯片EEPROM ESP32舵机驱动板 树莓派5 27W电源 树莓派5 5V5A电源 树莓派5 DC USB双输入 UART通信激光雷达 树莓派5 PCIe转USB HUB 2路2.5G RJ45 M.2 NVMe固态硬盘SSD扩展板 树莓派Pico 2 RP2350 2寸LCD开发板电容显示触摸屏 QMI8658 6轴/ OV5640摄像头/SD 1.28寸旋钮屏LCD触摸显示屏圆形智能家居开关中控串口屏 树莓派显示屏 斑梨 树莓派CM4-DUAL-ETH-MINI教程 CAN逻辑分析仪 AW-CB375N无线网卡 2.4G/5GHz双频RTL8822CE-CG核心WiFi蓝牙5.0无线模块 2.7英寸无源NFC电子墨水屏模块 树莓派21.5寸TypeC/HDMI显示屏1080p电脑手机Xbox/PS4/Switch